package com.ayf.payment.game.api.entity;

import com.ayf.payment.game.api.entity.base.BaseEntity;

import javax.persistence.Column;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.List;

@Table(name = "g_reissue_all_task")
public class ReissueAllTask extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * 商户ID
     */
    @Column(name = "merchant_id")
    private Integer merchantId;

    /**
     * 是否自动定时补发
     */
    @Column(name = "is_auto_reissue")
    private Short isAutoReissue;

    /**
     * 定时补发时间
     */
    @Column(name = "auto_reissue_time")
    private String autoReissueTime;

    /**
     * 被补发的充值起始时间
     */
    @Column(name = "reissue_start_time")
    private String reissueStartTime;

    /**
     * 被补发的充值结束时间
     */
    @Column(name = "reissue_end_time")
    private String reissueEndTime;

    /**
     * 分区名
     */
    @Column(name = "partition_name")
    private String partitionName;

    /**
     * 分区iD
     */
    @Column(name = "partition_id")
    private String partitionId;

    /**
     * 整区补发 说明类型  1 包括手动充值  2 按充值金额
     */
    @Column(name = "auto_type")
    private String autoType;

    /**
     * 是否清楚数据
     */
    @Column(name = "is_clean_data")
    private Short isCleanData;

    /**
     * 整区补发比例
     */
    @Column(name = "reissue_quota")
    private Integer reissueQuota;

    /**
     * 操作ip
     */
    @Column(name = "operate_ip")
    private String operateIp;

    /**
     * 补发状态 0默认  1成功  -1失败
     */
    @Column(name = "reissue_status")
    private Integer reissueStatus;

    @Column(name = "operator_id")
    private Integer operatorId;

    @Column(name = "remark")
    private String remark;


    @Transient
    private List<String> excludePlayerAccountNoList;

    public Integer getOperatorId() {
        return operatorId;
    }

    public void setOperatorId(Integer operatorId) {
        this.operatorId = operatorId;
    }

    /**
     * 获取商户ID
     *
     * @return merchant_id - 商户ID
     */
    public Integer getMerchantId() {
        return merchantId;
    }

    /**
     * 设置商户ID
     *
     * @param merchantId 商户ID
     */
    public void setMerchantId(Integer merchantId) {
        this.merchantId = merchantId;
    }

    /**
     * 获取是否自动定时补发
     *
     * @return is_auto_reissue - 是否自动定时补发
     */
    public Short getIsAutoReissue() {
        return isAutoReissue;
    }

    /**
     * 设置是否自动定时补发
     *
     * @param isAutoReissue 是否自动定时补发
     */
    public void setIsAutoReissue(Short isAutoReissue) {
        this.isAutoReissue = isAutoReissue;
    }

    /**
     * 获取定时补发时间
     *
     * @return auto_teissue_time - 定时补发时间
     */
    public String getAutoReissueTime() {
        return autoReissueTime;
    }

    /**
     * 设置定时补发时间
     *
     * @param autoReissueTime 定时补发时间
     */
    public void setAutoReissueTime(String autoReissueTime) {
        this.autoReissueTime = autoReissueTime;
    }

    /**
     * 获取被补发的充值起始时间
     *
     * @return reissue_start_time - 被补发的充值起始时间
     */
    public String getReissueStartTime() {
        return reissueStartTime;
    }

    /**
     * 设置被补发的充值起始时间
     *
     * @param reissueStartTime 被补发的充值起始时间
     */
    public void setReissueStartTime(String reissueStartTime) {
        this.reissueStartTime = reissueStartTime;
    }

    /**
     * 获取被补发的充值结束时间
     *
     * @return reissue_end_time - 被补发的充值结束时间
     */
    public String getReissueEndTime() {
        return reissueEndTime;
    }

    /**
     * 设置被补发的充值结束时间
     *
     * @param reissueEndTime 被补发的充值结束时间
     */
    public void setReissueEndTime(String reissueEndTime) {
        this.reissueEndTime = reissueEndTime;
    }

    /**
     * 获取分区名
     *
     * @return partition_name - 分区名
     */
    public String getPartitionName() {
        return partitionName;
    }

    /**
     * 设置分区名
     *
     * @param partitionName 分区名
     */
    public void setPartitionName(String partitionName) {
        this.partitionName = partitionName;
    }

    /**
     * 获取分区iD
     *
     * @return partition_id - 分区iD
     */
    public String getPartitionId() {
        return partitionId;
    }

    /**
     * 设置分区iD
     *
     * @param partitionId 分区iD
     */
    public void setPartitionId(String partitionId) {
        this.partitionId = partitionId;
    }

    /**
     * 获取整区补发 说明类型
     *
     * @return auto_type - 整区补发 说明类型
     */
    public String getAutoType() {
        return autoType;
    }

    /**
     * 设置整区补发 说明类型
     *
     * @param autoType 整区补发 说明类型
     */
    public void setAutoType(String autoType) {
        this.autoType = autoType;
    }

    /**
     * 获取是否清楚数据
     *
     * @return is_clean_data - 是否清楚数据
     */
    public Short getIsCleanData() {
        return isCleanData;
    }

    /**
     * 设置是否清楚数据
     *
     * @param isCleanData 是否清楚数据
     */
    public void setIsCleanData(Short isCleanData) {
        this.isCleanData = isCleanData;
    }

    /**
     * 获取整区补发比例
     *
     * @return reissue_quota - 整区补发比例
     */
    public Integer getReissueQuota() {
        return reissueQuota;
    }

    /**
     * 设置整区补发比例
     *
     * @param reissueQuota 整区补发比例
     */
    public void setReissueQuota(Integer reissueQuota) {
        this.reissueQuota = reissueQuota;
    }

    /**
     * 获取操作ip
     *
     * @return operate_ip - 操作ip
     */
    public String getOperateIp() {
        return operateIp;
    }

    /**
     * 设置操作ip
     *
     * @param operateIp 操作ip
     */
    public void setOperateIp(String operateIp) {
        this.operateIp = operateIp;
    }

    /**
     * 获取补发状态 0默认  1成功  -1失败
     *
     * @return reissueStatus - 补发状态 0默认  1成功  -1失败
     */
    public Integer getReissueStatus() {
        return reissueStatus;
    }

    /**
     * 设置补发状态 0默认  1成功  -1失败
     *
     * @param reissueStatus 补发状态 0默认  1成功  -1失败
     */
    public void setReissueStatus(Integer reissueStatus) {
        this.reissueStatus = reissueStatus;
    }

    public List<String> getExcludePlayerAccountNoList() {
        return excludePlayerAccountNoList;
    }

    public void setExcludePlayerAccountNoList(List<String> excludePlayerAccountNoList) {
        this.excludePlayerAccountNoList = excludePlayerAccountNoList;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}